{
 "cells": [
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "# \"Hello world\" in keras"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "A few months ago, I started a new job doing applied research at Fast Forward Labs. My new colleagues had just finished a project on image recongition with convolutional neural networks, and were starting on a new project on text summarization with recurrent neural networks. Neural networks were not something I'd previously worked with, so I knew I'd have to get up to speed fast.\n",
    "\n",
    "Despite all the recent excitement around deep learning, neural networks have a somewhat deserved reputation among non-specialists, who view them as computationally intensive to train and apply, difficult to interpret, and tedious to build.\n",
    "\n",
    "That was certainly my feeling. And while interpretability remains an issue, and you're going to want access to some pretty serious hardware to train and deploy large networks, the process of building and experimenting with neural networks has gotten a lot easier recently.\n",
    "\n",
    "That's because there are now _high-level_ neural network libraries that enable developers to quickly build neural network models without worrying about the numerical details of floating point operations, tensor algebra and GPU programming.\n",
    "\n",
    "Today we're going to look at one of these libraries, Keras. Keras is a high-level neural network library that, among many other things, wraps an API similar to scikit-learn's around the Theano or TensorFlow backends.\n",
    "\n",
    "Because of that similarity with scikit-learn, and to emphasise that neural network design and testing is now accessible to everyone, I'm going to give you a quick tutorial on how to use Keras by explicitly comparing it to scikit-learn\n",
    "\n",
    "Scikit-learn is the most popular, feature-complete classical machine learning library used by Python developers. Among the many great things about Scikit-learn, my favourite is its simple, coherent and consistent API, which is built around `Estimator` objects. The API is a good description of machine learning workflow with which many engineers are already comfortable with, and it's consistently applied throughout the package.\n",
    "\n",
    "Let's get started by importing the libraries we'll need: scikit-learn, Keras and some plotting features."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 1,
   "metadata": {
    "collapsed": false
   },
   "outputs": [
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "Using Theano backend.\n"
     ]
    }
   ],
   "source": [
    "%matplotlib inline\n",
    "import matplotlib.pyplot as plt\n",
    "import seaborn as sns\n",
    "import numpy as np\n",
    "\n",
    "from sklearn.cross_validation import train_test_split\n",
    "from sklearn.linear_model import LogisticRegressionCV\n",
    "\n",
    "from keras.models import Sequential\n",
    "from keras.layers.core import Dense, Activation\n",
    "from keras.utils import np_utils"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "# Iris data\n",
    "\n",
    "The famous [iris dataset](https://en.wikipedia.org/wiki/Iris_flower_data_set) (published by Ronald Fisher in 1936) is a great way of demonstrating the API of a machine learning framework. In some ways it's the \"Hello world\" of machine learning.\n",
    "\n",
    "The data is simple, and it's possible to get high accuracy with an extremely simple classifier. Using a neural network to solve this problem is therefore using a sledghammer to crack a nut. But this is fine! Our goal is to explore the code required to get from data to working classifier, not the details of model design and selection.\n",
    "\n",
    "The iris dataset is built into many machine learning libraries. I like the copy in `seaborn` because it comes as a labelled dataframe that can be easily visualized, and we're using seaborn anyway, so let's load it from there and look at the first 5 examples."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 2,
   "metadata": {
    "collapsed": false
   },
   "outputs": [
    {
     "data": {
      "text/html": [
       "<div>\n",
       "<table border=\"1\" class=\"dataframe\">\n",
       "  <thead>\n",
       "    <tr style=\"text-align: right;\">\n",
       "      <th></th>\n",
       "      <th>sepal_length</th>\n",
       "      <th>sepal_width</th>\n",
       "      <th>petal_length</th>\n",
       "      <th>petal_width</th>\n",
       "      <th>species</th>\n",
       "    </tr>\n",
       "  </thead>\n",
       "  <tbody>\n",
       "    <tr>\n",
       "      <th>0</th>\n",
       "      <td>5.1</td>\n",
       "      <td>3.5</td>\n",
       "      <td>1.4</td>\n",
       "      <td>0.2</td>\n",
       "      <td>setosa</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>1</th>\n",
       "      <td>4.9</td>\n",
       "      <td>3.0</td>\n",
       "      <td>1.4</td>\n",
       "      <td>0.2</td>\n",
       "      <td>setosa</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2</th>\n",
       "      <td>4.7</td>\n",
       "      <td>3.2</td>\n",
       "      <td>1.3</td>\n",
       "      <td>0.2</td>\n",
       "      <td>setosa</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>3</th>\n",
       "      <td>4.6</td>\n",
       "      <td>3.1</td>\n",
       "      <td>1.5</td>\n",
       "      <td>0.2</td>\n",
       "      <td>setosa</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>4</th>\n",
       "      <td>5.0</td>\n",
       "      <td>3.6</td>\n",
       "      <td>1.4</td>\n",
       "      <td>0.2</td>\n",
       "      <td>setosa</td>\n",
       "    </tr>\n",
       "  </tbody>\n",
       "</table>\n",
       "</div>"
      ],
      "text/plain": [
       "   sepal_length  sepal_width  petal_length  petal_width species\n",
       "0           5.1          3.5           1.4          0.2  setosa\n",
       "1           4.9          3.0           1.4          0.2  setosa\n",
       "2           4.7          3.2           1.3          0.2  setosa\n",
       "3           4.6          3.1           1.5          0.2  setosa\n",
       "4           5.0          3.6           1.4          0.2  setosa"
      ]
     },
     "execution_count": 2,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "iris = sns.load_dataset(\"iris\")\n",
    "iris.head()"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "<img src=\"Iris_sanguinea.JPG\" alt=\"An Iris\" style=\"width: 400px;\"/>\n",
    "\n",
    "For each example (i.e., flower), there are five pieces of data. Four are standard measurements of the flower's size (in centimeters), and the fifth is the species of iris. There are three species: setosa, verscicolor and virginica. Our job is to build a classifier that, given the two petal and two sepal measurements, can predict the species of an iris. Let's do a quick visualization before we start model building (always a good idea!):"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 3,
   "metadata": {
    "collapsed": false
   },
   "outputs": [
    {
     "data": {
      "image/png": "iVBORw0KGgoAAAANSUhEUgAAAxwAAALFCAYAAABJQeVbAAAABHNCSVQICAgIfAhkiAAAAAlwSFlz\nAAALEgAACxIB0t1+/AAAIABJREFUeJzs3X10VNW9P/73PCRzksxMwoTJA8lMAkFIQERMABGBtPQr\n3qZolUwrAuKXVPtt0ftdIlcv3nt1LXqvWq59sq0ttLWItj5x8bYqrb+f0qKiaGi9aoNgRfJIEkIS\nyEySScjM+f4RZjLnzPPzTPJ+rcVanDnn7Nkzs8+e7Dmf/dkKURRFEBERERERxYEy2RUgIiIiIqLJ\niwMOIiIiIiKKGw44iIiIiIgobjjgICIiIiKiuOGAg4iIiIiI4oYDDiIiIiIiiht1op9QFEX8y7/8\nC06fPg2VSoXvfOc7mDlzpnv/3r17sX//fhgMBgDAzp07UV5enuhqEhERERFRDCR8wPH2229jeHgY\nzz77LN555x384Ac/wOOPP+7e39TUhF27dmHevHmJrhoREREREcVYwgccGo0GVqsVoijCarUiIyND\nsr+pqQm7d+9GT08Pamtrceeddya6ikREREREFCMJH3BUV1djZGQE119/Pc6fP4/du3dL9tfV1WHD\nhg3QarXYunUrDh8+jFWrViW6mkREREREFAMJnzT+y1/+EldddRVee+01/P73v8f999+P0dFR9/7N\nmzcjLy8ParUaq1atwvHjx4OWKYpiPKtMFFNsr5Qu2FYpnbC9EqWuhN/hGBoaglarBQDodDqMjY3B\n6XQCAGw2G9auXYuDBw9CEAQcPXoU9fX1QctUKBTo6bFGXCejUcfzp/j5iRRte5WL9vUnosx0qGM8\nyoxXHRMlVm01Vu8Dy0m/chKJfevUKTPd+9apKOEDjoaGBuzYsQO33norHA4Htm3bhtdffx3Dw8Ow\nWCzYvn07Nm3aBI1Gg2XLlmHlypWJriIREREREcVIwgccer0eP/3pT/3ur6urQ11dXQJrRERERERE\n8cKF/4iIiIiIKG444CAiIiIiorjhgIOIiIiIiOKGAw4iIiIiIoobDjiIiIiIiChuOOAgIiIiIqK4\n4YCDiIiIiIjihgMOIiIiIiKKGw44iIiIiIgobhI+4BBFEQ888ADWr1+PjRs34vTp05L9hw4dQn19\nPW655Ra8+OKLia4eERERERHFUMIHHG+//TaGh4fx7LPP4tvf/jZ+8IMfuPeNjY3h0Ucfxd69e/H0\n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\nL7XN/Pn444/x9NNP48orr8QLL7yAK6+8Es888wzee+89JCYm4vXXX8c999yDQ4cO2cp84403UFRU\nhC1btmD16tXYtGkTvvrqK4waNQovvPACKioq0NbWFpbvG7YpVUREREREsailpQVPPfUUjh49igkT\nJuC///0vnnvuOSQkJOC1115Dd3c3Pv30U7S1tSEhIQEmkwkGgwEjR46EXq/H1VdfbSvrj3/8I0aO\nHIm9e/fiyy+/hFqthiAIiI+Px7PPPovnnnsOu3btQlpaGtatW4fhw4eH/Psy0zgRERERUQi9++67\n+MEPfoBRo0bh5ptvxvHjx3Ho0CGUlpZi//79uPzyy1FXV4cLL7wQM2fOxP79+1FXVweFQoHPPvsM\nV199Nb788kv885//RFyc5XF+xIgRKCwsxA033ICqqirs3r0bu3fvRk5ODp577jk8//zz2L59OxYu\nXBjy78s3HEREREREIfT555/bYjIyMjJQU1ODtLQ01NfXY/z48bjrrrvQ3NyM9evXw2g0or+/H/fe\ney9GjhyJu+++G5WVlQCA3//+93j77bdtMRy33347mpqa0NXVhdtvvx0jR47EL37xC8jlcsTHx+Pe\ne+9FRkZGyL8vBxxERERERGG0ePFiPP744xg2bFi4qxIUYQ0aJyIiIiKKddaFlIYqvuEgIiIiIqKg\n4RsOIiIiIiIKGg44iIiIiIgoaDjgICIiIiKioOGAg4iIiIiIgoYDDiIiIiKiKHX06FHs27cv3NVw\niwMOIiIiIqIA6Ozug9kc2gVg33//fRw7diykn+mruHBXgIiIiIgomnV29+GND4/igz1VKC7QYfmV\n45GVph5UmZWVlVi3bh3i4uIgCAI2bdqEV155BZ9//jlMJhN+/OMf47zzzsPWrVuRkJCA8ePHo62t\nDY8++iiUSiWGDx+O3//+9+jt7cXq1ashCAJ6e3txzz33oKioCA899BAOHDiAlpYWFBUV4fe//32A\nfhqOOOAgIiIiIhqEfYca8Jd/Wt4yfHagHgXZWiyaVzyoMnft2oXS0lL86le/wt69e/Hhhx+itrYW\nL7/8Mnp7e3H99dfjpZdewve//33o9XqUlJTgkksuwWuvvQa9Xo8XX3wRTzzxBKZNm4bhw4dj48aN\n+Oabb9DV1QWj0YiUlBQ8++yzEAQB5eXlaGxsRHp6eiB+HA444CAiIiIiGoSu3n7xdne/izO9V1FR\n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\nf//73zF9+vQ0p4iIiIiIiMYjI3s4AlepAoA777wTU6eyw5eIiIiIKNtkZIWDiIiIiIgmhowcUkVE\nRERERBMDKxxERERERCQbVjiIiIiIiEg2rHAQEREREZFsWOEgIiIiIiLZsMJBRERERESyYYWDiIiI\niIhkwwoHERERERHJhhUOIiIiIiKSDSscREREREQkG1Y4iIiIiIhINqxwEBERERGRbFjhICIiIiIi\n2bDCQUREREREsklLhcPj8WDHjh246qqrsGbNGnz66afC+X379uGKK67A1772NTzxxBPpSCIRERER\nESVBWioc+/btg0KhwGOPPYabbroJu3bt8p9zuVz48Y9/jN/85jfYs2cPHn/8cfT09KQjmURERERE\nlKC0VDjOO+88/Ou//isAoLm5GQUFBf5zR48eRXV1NfR6PXJycjBv3jzs378/HckkIiIiIqIEqdN1\nY6VSiVtuuQV//vOf8bOf/cz/+sDAAAwGg/84Pz8fNpstHUkkIiIiIqIEpXXS+J133okXXngBt956\nKxwOBwBAr9djYGDAH2ZwcBBGozFiPF6vV9Z0EiUT8ytlC+ZVyibMr0SZKy09HE899RTa29vx9a9/\nHRqNBkqlEkrlaN2ntrYWx48fR39/P7RaLfbv349NmzZFjE+hUKCzc/y9IGazgddP8utTKdH8KpXo\n+09FnNmQRjnilCuNqZKsvJqsvwPjyb54Uoll6+SJM9vL1skoLRWOVatW4bvf/S7Wrl0Ll8uFHTt2\n4MUXX8TQ0BBWr16NW265BRs3boTX68Xq1atRWlqajmQSEREREVGC0lLh0Gq1+OlPfxr2/IoVK7Bi\nxYrUJYiIiIiIiGTBjf+IiIiIiEg2rHAQEREREZFsWOEgIiIiIiLZsMJBRERERESyYYWDiIiIiIhk\nwwoHERERERHJhhUOIiIiIiKSDSscREREREQkG1Y4iIiIiIhINmnZaZyIiIgo22y6/ga0d3aGPb/2\nqq/ia1dcnsIUEWUHVjiIiIiIYpBf/jmU1swIe94+3J3C1BBlDw6pIiIiIiIi2bDCQUREREREsmGF\ng4iIiIiIZJPyORwulws7duxAc3MzRkZGcP3112PlypX+87/5zW/w+9//HiaTCQBw++23o6amJtXJ\nJCIiIiKiJEh5heOZZ55BUVER7r77bvT19eHSSy8VKhwHDx7E3XffjVmzZqU6aURERERElGQpr3Bc\n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\n",
      "text/plain": [
       "<matplotlib.figure.Figure at 0x1021439e8>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "sns.pairplot(iris, hue='species');"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "# Munge and split the data for training and testing\n",
    "\n",
    "First we need to pull the raw data out of the `iris` dataframe. We'll hold the petal and sepal data in an array `X` and the species labels in a corresponding array `y`."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 4,
   "metadata": {
    "collapsed": false
   },
   "outputs": [],
   "source": [
    "X = iris.values[:, :4]\n",
    "y = iris.values[:, 4]"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "As is standard in supervised machine learning, we'll train with some of the data, and measure the performance of our model with the remainder. This is simple to do by hand, but is also built into scikit-learn as the `train_test_split()` function."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 5,
   "metadata": {
    "collapsed": false
   },
   "outputs": [],
   "source": [
    "train_X, test_X, train_y, test_y = train_test_split(X, y, train_size=0.5, random_state=0)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "# Train a scikit-learn classifier\n",
    "\n",
    "We'll train a logisitic regression classifier. Doing this, with built-in hyper-paramter cross validation, is one line in scikit-learn. Like all scikit-learn `Estimator` objects, a `LogisticRegressionCV` classifier has a `.fit()` method that takes care of the gory numerical details of learning model parameters that best fit the training data. So that method is all we need to do:"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 6,
   "metadata": {
    "collapsed": false
   },
   "outputs": [
    {
     "data": {
      "text/plain": [
       "LogisticRegressionCV(Cs=10, class_weight=None, cv=None, dual=False,\n",
       "           fit_intercept=True, intercept_scaling=1.0, max_iter=100,\n",
       "           multi_class='ovr', n_jobs=1, penalty='l2', random_state=None,\n",
       "           refit=True, scoring=None, solver='lbfgs', tol=0.0001, verbose=0)"
      ]
     },
     "execution_count": 6,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "lr = LogisticRegressionCV()\n",
    "lr.fit(train_X, train_y)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "# Assess the classifier using accuracy\n",
    "\n",
    "Now we can measure the fraction of of the test set the trained classifer classifies correctly (i.e., accuracy)."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 7,
   "metadata": {
    "collapsed": false
   },
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Accuracy = 0.83\n"
     ]
    }
   ],
   "source": [
    "print(\"Accuracy = {:.2f}\".format(lr.score(test_X, test_y)))"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "# Now do something very similar with Keras"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "Keras is a high-level neural network library created by [François Chollet](https://twitter.com/fchollet) at Google. The initial commit to its public Github repository was March 27 last year, so it's a year old.\n",
    "\n",
    "As we just saw, scikit-learn makes building a classifier very simple:\n",
    " - one line to instantiate the classifier\n",
    " - one line to train it\n",
    " - and one line to measure its performance\n",
    " \n",
    "Building a classifier is only a little bit more complicated in Keras. The data-munging changes a little bit, and we have to do some work to define the network before we instantiate it as a classifier, but otherwise it's very similar to working with scikit-learn.\n",
    "\n",
    "First a bit of data-munging: scikit-learn's classifiers accept string labels, e.g. `\"setosa\"`. But `keras` requires that labels be one-hot-encoded. This means we need to convert data that looks like\n",
    "\n",
    "```\n",
    "setosa\n",
    "versicolor\n",
    "setosa\n",
    "virginica\n",
    "...\n",
    "```\n",
    "\n",
    "to a table that looks like\n",
    "\n",
    "```\n",
    "setosa versicolor virginica\n",
    "     1          0         0\n",
    "     0          1         0\n",
    "     1          0         0\n",
    "     0          0         1\n",
    "```\n",
    "\n",
    "There are lots of ways of doing this. If you're a pandas person then there's `pandas.get_dummies()`, and one-hot-encoding is in scikit-learn. We'll just use a Keras utility and some numpy."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 8,
   "metadata": {
    "collapsed": false
   },
   "outputs": [],
   "source": [
    "def one_hot_encode_object_array(arr):\n",
    "    '''One hot encode a numpy array of objects (e.g. strings)'''\n",
    "    uniques, ids = np.unique(arr, return_inverse=True)\n",
    "    return np_utils.to_categorical(ids, len(uniques))\n",
    "\n",
    "train_y_ohe = one_hot_encode_object_array(train_y)\n",
    "test_y_ohe = one_hot_encode_object_array(test_y)"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "# Build the neural network model\n",
    "\n",
    "Aside from the data munging required in this particular case, the most signifcant and important difference with working with Keras is that you have to specify the structure of the model before you can instantiate and use it.\n",
    "\n",
    "In scikit-learn, the models are off-the-shelf. But Keras is a neural network library. As such, while the number of features/classes in your data provide constraints, you can determine all the other aspects of model structure: number of layers, size of layers, the nature of the connections between the layers, etc. (And if that didn't make sense, Keras is a great way to experiment with it!)\n",
    "\n",
    "The upshot of this freedom is that instaniating a minimal classifier involves a bit more work than the one line required by scikit-learn.\n",
    "\n",
    "In our case, we'll build an extremely simple network. Two of the choices are made for us by the data. We have four features and three classes, so the input layer must have four units, and the output layer must have three units. We only have to define the hidden layers. We're only going to have one hidden layer for this project, and we'll give it 16 units. From the point of view of a GPU, 16 is a round number! You'll see a lot of powers of 2 when you work with neural networks.\n",
    "\n",
    "We're going to define our model in the most common way: as a sequential stack of layers. The alternative is as a computational graph, but we're going to stick to `Sequential()` here."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 9,
   "metadata": {
    "collapsed": true
   },
   "outputs": [],
   "source": [
    "model = Sequential()"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "The next two lines define the size input layer (input_shape=(4,), and the size and activation function of the hidden layer"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 10,
   "metadata": {
    "collapsed": true
   },
   "outputs": [],
   "source": [
    "model.add(Dense(16, input_shape=(4,)))\n",
    "model.add(Activation('sigmoid'))"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "... and the next line defines the size and activation function of the ouput layer."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 11,
   "metadata": {
    "collapsed": true
   },
   "outputs": [],
   "source": [
    "model.add(Dense(3))\n",
    "model.add(Activation('softmax'))"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "Finally we specify the optimization strategy and the loss function to optimize. We also instruct the model to calculate accuracy as it works."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 12,
   "metadata": {
    "collapsed": false
   },
   "outputs": [],
   "source": [
    "model.compile(optimizer='adam', loss='categorical_crossentropy', metrics=[\"accuracy\"])"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "# Use the neural network classifier\n",
    "\n",
    "Now we've defined the structure model and compiled it, we have an object whose API is almost identical to a classifier in scikit-learn. In particular, it has `.fit()` and `.predict()` methods. Let's `fit`.\n",
    "\n",
    "Training neural networks often involves the concept of \"minibatching\", which means showing the network a subset of the data, adjusting the weights, and then showing it another subset of the data. When the network has seen all the data once, that's called an \"epoch\". Tuning the minibatch/epoch strategy is a somewhat problem-specific issue, but in this case we'll just use a minibatch of 1. That makes it effectively good old stochastic gradient descent, i.e. the data is shown to the network one flower at a time, and the weights adjusted immediately.\n",
    "\n",
    "Feel free to rerun this cell with `verbose=0` removed. Note that if you want to experiment with the minibatch/epoch strategy you should rerun the previous cell that ran `model.compile()` to reinitialize the model weights."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 13,
   "metadata": {
    "collapsed": false
   },
   "outputs": [],
   "source": [
    "model.fit(train_X, train_y_ohe, nb_epoch=100, batch_size=1, verbose=0);"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "For basic use, the only syntactic API difference between a compiled keras model and a scikit-learn classifier is that Keras's equivalent of the scikit-learn `.score()` method is called `.evaluate()`. \n",
    "\n",
    "`evaluate()` returns the loss function and any other metrics we asked for when we compiled the model. In our case, we asked for `accuracy`, which we can compare to the accuracy we got from the `.score()` method of our scikit-learn `LogisticRegressionCV` classifier."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 14,
   "metadata": {
    "collapsed": false
   },
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Accuracy = 0.97\n"
     ]
    }
   ],
   "source": [
    "loss, accuracy = model.evaluate(test_X, test_y_ohe, verbose=0)\n",
    "print(\"Accuracy = {:.2f}\".format(accuracy))"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "As you can see, the test accuracy of the neural network model is better than that of the simple logistic regression classifier.\n",
    "\n",
    "This is reassuring but not surprising. Even our very simple neural network has the flexibility to learn much more complicated classification surfaces than logisitic regression, so of course it does better than logisitic regression.\n",
    "\n",
    "And it does hint at one of the dangers of neural networks: overfitting. We've been careful here to hold out a test set and measure performance with that, but it's a small set, and 99% accuracy seems awfully high to me, so I wouldn't be surprised if there was some overfitting going on. You could work on that by adding dropout (which is built in to Keras). That's the neural network equivalent of the regularization our LogisticRegression classifier uses.\n",
    "\n",
    "But we'll stop here, because a neural network model is overkill for this problem, and worrying about accuracy is not the point of what I've shown you. The point is that using a batteries-included, high-level library like Keras means that we need to write only a little bit more code to build, train, and apply a neural network model than a traditional model.\n",
    "\n",
    "# What next?\n",
    "\n",
    "We built an extremely simple feed-forward network model. To experiment more, load the [MNIST database of handwritten digits](http://keras.io/datasets/) and see if you can beat a standard scikit-learn classifier. Unlike the Iris dataset, this is a situation where the power and relative complexity of neural networks is justified. Try it yourself first, but if you get stuck, take a look at [this notebook](https://github.com/wxs/keras-mnist-tutorial/blob/master/MNIST%20in%20Keras.ipynb).\n",
    "\n",
    "Technical and engineering tutorials for your favourite language or library are easy to find, but if you're interested in some of the more conceptual and mathematical background, take a look at:\n",
    " - Michael Nielsen's online textbook \"[Neural Networks and Deep Learning](http://neuralnetworksanddeeplearning.com/)\" (especially chapters 1, 2 and 3)\n",
    " - Weeks 4 and 5 of Andrew Ng's Coursera course \"[Machine Learning](https://www.coursera.org/learn/machine-learning)\" (you'll have to sign up for the course to access these materials)\n",
    " - \"[Deep Learning](http://www.nature.com/nature/journal/v521/n7553/abs/nature14539.html)\" by Yan Le Cun et al. in Nature (2015) (you can find a [PDF of this article on Google Scholar](https://scholar.google.com/scholar?cluster=5362332738201102290))\n",
    " - Chris Olah's [wonderful essays](http://colah.github.io/), particularly the ones on [back propagation](http://colah.github.io/posts/2015-08-Backprop/) (the algorithm with which neural networks are trained) and [recurrent neural networks](http://colah.github.io/posts/2015-08-Understanding-LSTMs/).\n",
    "\n",
    "Speaking of recurrent neural networks, Keras also has layers that allow you to build models with:\n",
    "\n",
    " - convolutional layers, which give state-of-the-art results for computer vsion problems;\n",
    " - recurrent layers, which are particularly well suited to modelling language and other sequence data.\n",
    " \n",
    "In fact, one key strength of neural networks (along with sheer predictive power) is their composability. Using a high-level library like Keras, it takes only a few seconds of work to create a very different network. Models can be built up like Lego. Have fun!"
   ]
  }
 ],
 "metadata": {
  "kernelspec": {
   "display_name": "Python 3",
   "language": "python",
   "name": "python3"
  },
  "language_info": {
   "codemirror_mode": {
    "name": "ipython",
    "version": 3
   },
   "file_extension": ".py",
   "mimetype": "text/x-python",
   "name": "python",
   "nbconvert_exporter": "python",
   "pygments_lexer": "ipython3",
   "version": "3.5.0"
  }
 },
 "nbformat": 4,
 "nbformat_minor": 0
}
